<?php

namespace app\common\common;

use think\Config; 

/**
 *  FTP图片文件操作类 
 *
 * @author jiang.ding
 * 
 * @注意: 由于时间问题,本类尚未全部测试;为防止出错,用之前,请先进行测试,
 * 
 */
class FTP {

    /**
     *  ftp连接资源
     */
    protected $_connect;  
    
    /**
     *  ftp登录结果
     */
    protected $_loginRes;   
    
    /**
     *  被动模式
     */
    protected $_passive;    
    
    public function __construct()
    {
        # FTP连接并登陆账号
        $this->_connect = ftp_connect(Config::get('BAIDU_FTP_HOST'), Config::get('BAIDU_FTP_PORT')); 
        $this->_loginRes = ftp_login($this->_connect, Config::get('BAIDU_FTP_USER'), Config::get('BAIDU_FTP_PASS'));
        $this->_passive = ftp_pasv($this->_connect, true); //启动被动模式
    }
    
     /**
     *  获取摄像机图片的存放路径 
     *  $return array $files 返回图片地址(数组)
     */
    public function getCameraPic() {
        # 换成ftp方式获取文件目录
//        $files = ftp_rawlist($this->_connect,'/'); //文件详细信息
        $files = ftp_nlist($this->_connect,'/');
        return $files;
    }
    /**
     * 删除FTP图片的方法
     * @param $filePath string 根目录下的文件路径
     * @return bool 删除成功返回true,否则返回false
     */
    public function deleteCameraPic($filePath) {
        
        # ftp删除图片,连接ftp,若文件存在,删除文件
        ## 判断文件是否存在????返回false?????
        if (!$this->_connect || !$this->_loginRes) {
            return false;
        }

        $deleteRes = ftp_delete($this->_connect, $filePath);
        return $deleteRes;
    }
    
}
